package dao;

import java.util.HashMap;
import java.util.List;

import model.User;

import org.springframework.stereotype.Repository;

import com.github.miemiedev.mybatis.paginator.domain.PageBounds;

@Repository
public interface UserDao {
	/**
	 * 用户新增
	 * 
	 * @param user
	 * @return
	 */
	public void save(User user);

	/**
	 * 用户修改
	 * 
	 * @param id
	 */
	public void update(User user);

	/**
	 * 列表显示
	 * 
	 * @param pageBounds
	 * @return
	 */
	public List<HashMap<String, Object>> queryUserPage(PageBounds pageBounds,
			HashMap<String, Object> map);

	/**
	 * 获取用户信息
	 * 
	 * @param id
	 * @return
	 */
	public User getById(Integer id);

	/**
	 * 获取当前用户信息
	 * 
	 * @param id
	 * @return
	 */
	public HashMap<String, Object> getCurUser(Integer id);

	/**
	 * 删除
	 * 
	 * @param id
	 */
	public void delete(Integer id);

	public User load(User user);

	/**
	 * 用户名唯一
	 * 
	 * @author yakun0622
	 * @param map
	 * @return
	 */
	public User uniqueName(HashMap<String, Object> map);

	public Integer queryCount(HashMap<String, Object> map);
}
